A NAND-type flash memory device which is a nonvolatile semiconductor memory device has been widely used as an external memory device of a host device, such as a personal computer, a portable telephone, or a digital camera, or used as a built-in memory device of a computer system.
In the memory device, high security of data is ensured in such a manner that, when the data is stored in the memory device, the data is encoded by an error correction code, and that, when data is read from the memory device, the data is subjected to error detection/correction processing.
Here, when data is stored in the memory device, a predetermined amount of charge is injected to the charge storage layer of a memory cell via the insulating film according to the data to be stored. When the data is reproduced, the stored data is read by measuring the difference in the transistor threshold voltage corresponding to the amount of charge stored in the memory cell. That is, the memory cell has a plurality of memory states having different threshold voltages, and data stored in the memory cell is determined in correspondence with each of the memory states. In a binary memory device, data corresponding to each memory cell is determined, for example, in such a manner that data of “1” corresponds to a memory cell in the state where no charge is stored and hence the threshold voltage is low, and such that data of “0” corresponds to a memory cell in the state where an amount of charge is stored and hence the threshold voltage is high.
Further, a multi-value memory device has also been developed which is capable of storing two-bit data in a memory cell using memory states corresponding to four different threshold voltages. Note that the reliability of the multi-value memory cell is not better than the reliability of the binary memory cell.
Here, in an NAND-type flash memory section, there are restrictions on the number of times of writing/erasing and on the number of times of reading. The restriction on the number of times of writing/erasing is due to the fact that, in the writing/erasing processing, electrons are injected to the floating gate by applying to the gate a high voltage with respect to the substrate. That is, when the writing/erasing processing is repeatedly performed, the data may be destroyed due to deterioration of the oxide film around the floating gate.
On the other hand, the restriction on the number of times of reading is due to the read-disturb. The read-disturb is a phenomenon in which, since the read voltage is also applied to unselected memory cells from the word line, electrons are gradually injected to the floating gate of the unselected memory cells. That is, as only the process for reading data from a memory cell storing the data is repeated, the threshold voltage at the time of reading the data is changed so that the storage state of the data is deteriorated. Further, the number of read errors is increased, and the reliability of the read data is lowered.